From: Alex Williamson Date: Fri, 12 Oct 2007 20:30:30 +0000 (-0600) Subject: [IA64] vti domain save/restore: add unwind directive to break fault handler X-Git-Tag: archive/raspbian/4.8.0-1+rpi1~1^2~14871 X-Git-Url: https://dgit.raspbian.org/%22http:/www.example.com/cgi/%22https:/%22bookmarks:///%22http:/www.example.com/cgi/%22https:/%22bookmarks:/?a=commitdiff_plain;h=6df0ca32aec662303852075150e5d2b010aec546;p=xen.git [IA64] vti domain save/restore: add unwind directive to break fault handler add unwind directive to fast_hypercall path. While fast_hypercall path calls function (hypercall, do_softirq()) and might be blocked, it doesn't have unwind infomation. So stack unwinding fails. Add necessary unwind directive. Signed-off-by: Isaku Yamahata --- diff --git a/xen/arch/ia64/xen/ivt.S b/xen/arch/ia64/xen/ivt.S index a021250017..f0f8c5f62c 100644 --- a/xen/arch/ia64/xen/ivt.S +++ b/xen/arch/ia64/xen/ivt.S @@ -458,6 +458,7 @@ END(daccess_bit) ////////////////////////////////////////////////////////////////////////// // 0x2c00 Entry 11 (size 64 bundles) Break instruction (33) ENTRY(break_fault) + .body /* * The streamlined system call entry/exit paths only save/restore * the initial part of pt_regs. This implies that the callers of @@ -657,6 +658,7 @@ fast_hypercall: bsw.1 // B (6 cyc) regs are saved, switch to bank 1 ;; + PT_REGS_UNWIND_INFO(0) ssm psr.ic | PSR_DEFAULT_BITS // M2 now it's safe to re-enable intr.-collection // movl r3=ia64_ret_from_syscall // X ;;